home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / cocktail / puma.lha / puma / src / MakefileM2C < prev    next >
Text File  |  1992-09-25  |  3KB  |  112 lines

  1.                 # Modula-2 library
  2. LIB    = ../../reuse/src
  3.  
  4.                 # options for modula compiler
  5. MFLAGS    = -nobounds -norange -M. -M$(LIB)
  6.  
  7.                 # option to name linked program
  8. OUT    = ; mv a.out
  9.  
  10. MD    = m2c $(MFLAGS)        # command to compile definition module
  11. MI    = m2c $(MFLAGS)        # command to compile implementation module
  12. MP    = m2c $(MFLAGS)        # command to compile program module
  13. ML    = m2c $(MFLAGS) -e    # command to link program
  14.  
  15. ED    = .def    # extension for definition module
  16. EI    = .mod    # extension for implementation module
  17. EP    = .mod    # extension for program module
  18. ES    = .sym    # extension for symbol file (compiled definition)
  19. EO    = .o    # extension for object file (compiled implementation)
  20.  
  21. SD    = .def    # compiler suffix for definition module
  22. SI    = .mod    # compiler suffix for implementation module
  23. SP    = .mod    # compiler suffix for program module
  24.  
  25. all    :
  26.  
  27. # HEAD
  28.  
  29. C$(ES)    : C$(ED)    ; $(MD) C$(SD)
  30. C$(ES)    : Tree$(ES)
  31.  
  32. C$(EO)    : C$(EI)    ; $(MI) C$(SI)
  33. C$(EO)    : C$(ES)
  34. C$(EO)    : Tree$(ES)
  35. C$(EO)    : Semantics$(ES)
  36. C$(EO)    : Optimize$(ES)
  37. C$(EO)    : Tree$(ES)
  38.  
  39. Mod$(ES)    : Mod$(ED)    ; $(MD) Mod$(SD)
  40. Mod$(ES)    : Tree$(ES)
  41.  
  42. Mod$(EO)    : Mod$(EI)    ; $(MI) Mod$(SI)
  43. Mod$(EO)    : Mod$(ES)
  44. Mod$(EO)    : Tree$(ES)
  45. Mod$(EO)    : Semantics$(ES)
  46. Mod$(EO)    : Optimize$(ES)
  47. Mod$(EO)    : Tree$(ES)
  48.  
  49. Optimize$(ES)    : Optimize$(ED)    ; $(MD) Optimize$(SD)
  50. Optimize$(ES)    : Tree$(ES)
  51.  
  52. Optimize$(EO)    : Optimize$(EI)    ; $(MI) Optimize$(SI)
  53. Optimize$(EO)    : Optimize$(ES)
  54. Optimize$(EO)    : Tree$(ES)
  55. Optimize$(EO)    : Mod$(ES)
  56. Optimize$(EO)    : Tree$(ES)
  57. Optimize$(EO)    : Scanner$(ES)
  58.  
  59. Parser$(ES)    : Parser$(ED)    ; $(MD) Parser$(SD)
  60.  
  61. Parser$(EO)    : Parser$(EI)    ; $(MI) Parser$(SI)
  62. Parser$(EO)    : Parser$(ES)
  63. Parser$(EO)    : Scanner$(ES)
  64. Parser$(EO)    : Scanner$(ES)
  65. Parser$(EO)    : Tree$(ES)
  66.  
  67. Scanner$(ES)    : Scanner$(ED)    ; $(MD) Scanner$(SD)
  68.  
  69. Scanner$(EO)    : Scanner$(EI)    ; $(MI) Scanner$(SI)
  70. Scanner$(EO)    : Scanner$(ES)
  71. Scanner$(EO)    : Tree$(ES)
  72.  
  73. Semantics$(ES)    : Semantics$(ED)    ; $(MD) Semantics$(SD)
  74. Semantics$(ES)    : Tree$(ES)
  75. Semantics$(ES)    : Tree$(ES)
  76.  
  77. Semantics$(EO)    : Semantics$(EI)    ; $(MI) Semantics$(SI)
  78. Semantics$(EO)    : Semantics$(ES)
  79. Semantics$(EO)    : Tree$(ES)
  80. Semantics$(EO)    : Scanner$(ES)
  81. Semantics$(EO)    : Tree$(ES)
  82.  
  83. Tree$(ES)    : Tree$(ED)    ; $(MD) Tree$(SD)
  84.  
  85. Tree$(EO)    : Tree$(EI)    ; $(MI) Tree$(SI)
  86. Tree$(EO)    : Tree$(ES)
  87.  
  88. Tree2$(ES)    : Tree2$(ED)    ; $(MD) Tree2$(SD)
  89. Tree2$(ES)    : Tree$(ES)
  90.  
  91. Tree2$(EO)    : Tree2$(EI)    ; $(MI) Tree2$(SI)
  92. Tree2$(EO)    : Tree2$(ES)
  93. Tree2$(EO)    : Tree$(ES)
  94.  
  95. all    : puma
  96. puma$(EO)    : puma$(EP)    ; $(MP) puma$(SP)
  97. puma$(EO)    : Scanner$(ES)
  98. puma$(EO)    : Parser$(ES)
  99. puma$(EO)    : Tree$(ES)
  100. puma$(EO)    : Tree2$(ES)
  101. puma$(EO)    : Semantics$(ES)
  102. puma$(EO)    : Optimize$(ES)
  103. puma$(EO)    : Mod$(ES)
  104. puma$(EO)    : C$(ES)
  105.  
  106. puma    : puma$(EO) C$(EO) Tree$(EO) Optimize$(EO) Scanner$(EO) Mod$(EO) Semantics$(EO) Tree2$(EO) Parser$(EO)    ; $(ML) puma $(OUT) puma
  107.  
  108. # TAIL
  109.  
  110. # CLEAN    :    ; rm -f core *.[dimor] ERRORS LISTING
  111. CLEAN    :    ; rm -f core *.sym *.o
  112.